package work.linruchang.bean;


import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the ct_ctb_line_info database table.
 * 信息管理 =》线路信息管理
 */
@Entity
@Table(name = "ct_ctb_line_info")
@NamedQueries({

})
public class CtbLineInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 对应楼栋ID
     */
    @Column(name = "building_id")
    private Long buildingId;


    @Column(name = "test_account")
    private String testAccount;

    private String password;

    /**
     * 记录创建时间
     */
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 记录更新时间
     */
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 占用资源、线路编码   多个同一个六元组可能绑定不一样的主线编码
     */
    private String onu;

    /**
     * 局向
     */
    @Column(name = "ct_direction")
    private String direction;
    /**
     * 局向编码
     */
    @Column(name = "ct_direction_code")
    private String directionCode;

    /**
     * ===========六元组信息================
     */

    /**
     * 接入服务器IP
     */
    @Column(name = "ct_nas_ip")
    private String ctNasIp;
    /**
     * xci
     */
    @Column(name = "ct_xci")
    private String ctXci;

    /**
     * xpi
     */
    @Column(name = "ct_xpi")
    private String ctXpi;

    /**
     * 端口
     */
    private String port;

    /**
     * 槽位
     */
    private String slot;

    /**
     * 子槽位
     */
    private String subslot;
    /**
     * ===========================
     */

    /**
     * 备注
     */
    private String mark;

    /**
     * 揽装人工号 == CRM的销售渠道编码
     */
    private String decorateNum;

    /**
     * 标准地址ID
     */
    private String addressId;

    /**
     * 标准地址名称
     */
    @Column(name = "address_name")
    private String addressName;

    /**
     * 设备编码
     */
    private String macCode;

    /**
     * 地市编码
     */
    private String areaCode;
    

    /**
     * 区县编码
     */
    @Column(name = "region_code")
    private String regionCode;

    /**
     * 营服编码
     */
    private String mscCode;

    /**
     * 房东ID
     */
    private Long landlordId;

    /**
     * 快捷送主线时的订购方式
     * 0：默认1线多号
     * 1：1线1号
     *
     * 参考{ Constants#CCLI_TYPE_MANY}
     */
    private String type;

    /**
     *
     * 【已不使用】
     * 是否强制六元组信息不随定时任务ReadCtbbBindTimer发生变更
     * 数据库值：1true 0false 默认0
     */
    @Column(name = "forced_sync_flag")
    private boolean forcedSyncFlag = false;

    /**
     * 房间信息
     */
    //private String houseInfo;

    /**
     * 逻辑删除 == 待删除 == 记得删
     *
     * 1逻辑删除 0正常显示
     */
    //Integer isDel;

    @Transient
    private Long houseId;// 翼乐居房间号
    @Transient
    private String flatName;// 翼乐居房间号
    /**
     * 线路类型
     * { Constants#LINE_TYPE_APARTMENT}
     */
    @Transient
    private String lineType;
    /**
     * 揽装人姓名
     */
    @Transient
    private String decorateName;

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getDecorateName() {
        return decorateName;
    }

    public void setDecorateName(String decorateName) {
        this.decorateName = decorateName;
    }

    public String getLineType() {
        return lineType;
    }

    public void setLineType(String lineType) {
        this.lineType = lineType;
    }


    public CtbLineInfo() {
    }

    public String getFlatName() {
        return flatName;
    }

    public void setFlatName(String flatName) {
        this.flatName = flatName;
    }

    public Long getHouseId() {
        return houseId;
    }

    public void setHouseId(Long houseId) {
        this.houseId = houseId;
    }

    public boolean getForcedSyncFlag() {
        return forcedSyncFlag;
    }

    public void setForcedSyncFlag(boolean forcedSyncFlag) {
        this.forcedSyncFlag = forcedSyncFlag;
    }

    public Long getBuildingId() {
        return this.buildingId;
    }

    public String getDirection() {
        return direction;
    }

    public void setDirection(String direction) {
        this.direction = direction;
    }

    public String getDirectionCode() {
        return directionCode;
    }

    public String getMacCode() {
        return macCode;
    }

    public void setMacCode(String macCode) {
        this.macCode = macCode;
    }

    public void setDirectionCode(String directionCode) {
        this.directionCode = directionCode;
    }

    public String getSlot() {
        return slot;
    }

    public void setSlot(String slot) {
        this.slot = slot;
    }

    public String getSubslot() {
        return subslot;
    }

    public void setSubslot(String subslot) {
        this.subslot = subslot;
    }

    public String getPort() {
        return port;
    }

    public void setPort(String port) {
        this.port = port;
    }

    public String getTestAccount() {
        return testAccount;
    }

    public void setTestAccount(String testAccount) {
        this.testAccount = testAccount;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public void setBuildingId(Long buildingId) {
        this.buildingId = buildingId;
    }

    public Date getCreateTime() {
        return this.createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCtNasIp() {
        return this.ctNasIp;
    }

    public void setCtNasIp(String ctNasIp) {
        this.ctNasIp = ctNasIp;
    }

    public String getCtXci() {
        return this.ctXci;
    }

    public void setCtXci(String ctXci) {
        this.ctXci = ctXci;
    }

    public String getCtXpi() {
        return this.ctXpi;
    }

    public void setCtXpi(String ctXpi) {
        this.ctXpi = ctXpi;
    }

    public Date getUpdateTime() {
        return this.updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getOnu() {
        return onu;
    }

    public void setOnu(String onu) {
        this.onu = onu;
    }

    public String getMark() {
        return mark;
    }

    public void setMark(String mark) {
        this.mark = mark;
    }

    public String getDecorateNum() {
        return decorateNum;
    }

    public void setDecorateNum(String decorateNum) {
        this.decorateNum = decorateNum;
    }

    public String getAddressId() {
        return addressId;
    }

    public void setAddressId(String addressId) {
        this.addressId = addressId;
    }

    public String getAddressName() {
        return addressName;
    }

    public void setAddressName(String addressName) {
        this.addressName = addressName;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    public String getRegionCode() {
        return regionCode;
    }

    public void setRegionCode(String regionCode) {
        this.regionCode = regionCode;
    }

    public String getMscCode() {
        return mscCode;
    }

    public void setMscCode(String mscCode) {
        this.mscCode = mscCode;
    }

    public Long getLandlordId() {
        return landlordId;
    }

    public void setLandlordId(Long landlordId) {
        this.landlordId = landlordId;
    }

    //public String getHouseInfo() {
    //    return houseInfo;
    //}
    //
    //public void setHouseInfo(String houseInfo) {
    //    this.houseInfo = houseInfo;
    //}


    @Override
    public String toString() {
        return "CtbLineInfo{" +
                "buildingId=" + buildingId +
                ", testAccount='" + testAccount + '\'' +
                ", password='" + password + '\'' +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", onu='" + onu + '\'' +
                ", direction='" + direction + '\'' +
                ", directionCode='" + directionCode + '\'' +
                ", ctNasIp='" + ctNasIp + '\'' +
                ", ctXci='" + ctXci + '\'' +
                ", ctXpi='" + ctXpi + '\'' +
                ", port='" + port + '\'' +
                ", slot='" + slot + '\'' +
                ", subslot='" + subslot + '\'' +
                ", mark='" + mark + '\'' +
                ", decorateNum='" + decorateNum + '\'' +
                ", addressId='" + addressId + '\'' +
                ", addressName='" + addressName + '\'' +
                ", macCode='" + macCode + '\'' +
                ", areaCode='" + areaCode + '\'' +
                ", regionCode='" + regionCode + '\'' +
                ", mscCode='" + mscCode + '\'' +
                ", landlordId=" + landlordId +
                ", type='" + type + '\'' +
                ", forcedSyncFlag=" + forcedSyncFlag +
                ", houseId=" + houseId +
                ", flatName='" + flatName + '\'' +
                ", lineType='" + lineType + '\'' +
                ", decorateName='" + decorateName + '\'' +
                '}';
    }
}